[INFO] fetching crate gengine 0.1.0...
[INFO] building gengine-0.1.0 against master#ff34b919075f35a1787659e9c448a34b06bab8de for issue-85264
[INFO] extracting crate gengine 0.1.0 into /workspace/builds/worker-9/source
[INFO] validating manifest of crates.io crate gengine 0.1.0 on toolchain ff34b919075f35a1787659e9c448a34b06bab8de
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+ff34b919075f35a1787659e9c448a34b06bab8de" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate gengine 0.1.0
[INFO] finished tweaking crates.io crate gengine 0.1.0
[INFO] tweaked toml for crates.io crate gengine 0.1.0 written to /workspace/builds/worker-9/source/Cargo.toml
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+ff34b919075f35a1787659e9c448a34b06bab8de" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update", kill_on_drop: false }`
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+ff34b919075f35a1787659e9c448a34b06bab8de" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-9/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-9/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:20528e8c29e4536546f0102ce88568b16ea7538393a33fcca951030f7af10457" "/opt/rustwide/cargo-home/bin/cargo" "+ff34b919075f35a1787659e9c448a34b06bab8de" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] a566b8aa9eedea0ddd5b6e3927455eac20cb3188d7b1f32303291266f7d26a8b
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] running `Command { std: "docker" "start" "-a" "a566b8aa9eedea0ddd5b6e3927455eac20cb3188d7b1f32303291266f7d26a8b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "a566b8aa9eedea0ddd5b6e3927455eac20cb3188d7b1f32303291266f7d26a8b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "a566b8aa9eedea0ddd5b6e3927455eac20cb3188d7b1f32303291266f7d26a8b", kill_on_drop: false }`
[INFO] [stdout] a566b8aa9eedea0ddd5b6e3927455eac20cb3188d7b1f32303291266f7d26a8b
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-9/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-9/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:20528e8c29e4536546f0102ce88568b16ea7538393a33fcca951030f7af10457" "/opt/rustwide/cargo-home/bin/cargo" "+ff34b919075f35a1787659e9c448a34b06bab8de" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 4dd700a35e47d5124dc07b8f1ba29c2d5650f02d3aa12f50965b5f6ee15d2e6f
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] running `Command { std: "docker" "start" "-a" "4dd700a35e47d5124dc07b8f1ba29c2d5650f02d3aa12f50965b5f6ee15d2e6f", kill_on_drop: false }`
[INFO] [stderr]    Compiling autocfg v1.0.1
[INFO] [stderr]    Compiling libc v0.2.95
[INFO] [stderr]    Compiling approx v0.1.1
[INFO] [stderr]    Compiling rustc-serialize v0.3.24
[INFO] [stderr]    Compiling num-traits v0.2.14
[INFO] [stderr]    Compiling rand v0.4.6
[INFO] [stderr]    Compiling rand v0.3.23
[INFO] [stderr]    Compiling num-traits v0.1.43
[INFO] [stderr]    Compiling cgmath v0.12.0
[INFO] [stderr]    Compiling gengine v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]  --> src/lib.rs:4:26
[INFO] [stdout]   |
[INFO] [stdout] 4 |     fn as_any(&self) -> &Any;
[INFO] [stdout]   |                          ^^^ help: use `dyn`: `dyn Any`
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout]   = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]   = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:12:26
[INFO] [stdout]    |
[INFO] [stdout] 12 |     fn as_any(&self) -> &Any {
[INFO] [stdout]    |                          ^^^ help: use `dyn`: `dyn Any`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:23:26
[INFO] [stdout]    |
[INFO] [stdout] 23 |     fn as_any(&self) -> &Any {
[INFO] [stdout]    |                          ^^^ help: use `dyn`: `dyn Any`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:44:26
[INFO] [stdout]    |
[INFO] [stdout] 44 |     fn as_any(&self) -> &Any {
[INFO] [stdout]    |                          ^^^ help: use `dyn`: `dyn Any`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:90:27
[INFO] [stdout]    |
[INFO] [stdout] 90 | type Components = Vec<Box<Component>>;
[INFO] [stdout]    |                           ^^^^^^^^^ help: use `dyn`: `dyn Component`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `m`
[INFO] [stdout]    --> src/lib.rs:100:17
[INFO] [stdout]     |
[INFO] [stdout] 100 |     if let Some(m) = motion {
[INFO] [stdout]     |                 ^ help: if this is intentional, prefix it with an underscore: `_m`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `new_p`
[INFO] [stdout]    --> src/lib.rs:102:21
[INFO] [stdout]     |
[INFO] [stdout] 102 |             let mut new_p = p;
[INFO] [stdout]     |                     ^^^^^ help: if this is intentional, prefix it with an underscore: `_new_p`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]    --> src/lib.rs:147:9
[INFO] [stdout]     |
[INFO] [stdout] 147 |     for i in 0..20 {
[INFO] [stdout]     |         ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/lib.rs:102:17
[INFO] [stdout]     |
[INFO] [stdout] 102 |             let mut new_p = p;
[INFO] [stdout]     |                 ----^^^^^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `set`
[INFO] [stdout]   --> src/lib.rs:28:8
[INFO] [stdout]    |
[INFO] [stdout] 28 |     fn set(&mut self, x: i32, y: i32) {
[INFO] [stdout]    |        ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `new`
[INFO] [stdout]   --> src/lib.rs:49:8
[INFO] [stdout]    |
[INFO] [stdout] 49 |     fn new() -> Motion {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `set_v`
[INFO] [stdout]   --> src/lib.rs:55:8
[INFO] [stdout]    |
[INFO] [stdout] 55 |     fn set_v(&mut self, a_x: f32, a_y: f32)  {
[INFO] [stdout]    |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `set_a`
[INFO] [stdout]   --> src/lib.rs:59:8
[INFO] [stdout]    |
[INFO] [stdout] 59 |     fn set_a(&mut self, v_x: f32, v_y: f32) {
[INFO] [stdout]    |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `get_cmpnt`
[INFO] [stdout]   --> src/lib.rs:70:4
[INFO] [stdout]    |
[INFO] [stdout] 70 | fn get_cmpnt<'a, T>(v: &'a Components) -> Option<T>
[INFO] [stdout]    |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `set_cmpnt`
[INFO] [stdout]   --> src/lib.rs:81:4
[INFO] [stdout]    |
[INFO] [stdout] 81 | fn set_cmpnt<T>(v: &mut Components, val: T)
[INFO] [stdout]    |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias is never used: `Components`
[INFO] [stdout]   --> src/lib.rs:90:1
[INFO] [stdout]    |
[INFO] [stdout] 90 | type Components = Vec<Box<Component>>;
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct is never constructed: `Screen`
[INFO] [stdout]   --> src/lib.rs:92:8
[INFO] [stdout]    |
[INFO] [stdout] 92 | struct Screen {
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `moving`
[INFO] [stdout]   --> src/lib.rs:97:4
[INFO] [stdout]    |
[INFO] [stdout] 97 | fn moving(entity: &Components) {
[INFO] [stdout]    |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `rendering`
[INFO] [stdout]    --> src/lib.rs:108:4
[INFO] [stdout]     |
[INFO] [stdout] 108 | fn rendering(screen: &Screen, entity: &Components) {
[INFO] [stdout]     |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `main`
[INFO] [stdout]    --> src/lib.rs:124:4
[INFO] [stdout]     |
[INFO] [stdout] 124 | fn main() {
[INFO] [stdout]     |    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 20 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished dev [unoptimized + debuginfo] target(s) in 6.27s
[INFO] running `Command { std: "docker" "inspect" "4dd700a35e47d5124dc07b8f1ba29c2d5650f02d3aa12f50965b5f6ee15d2e6f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "4dd700a35e47d5124dc07b8f1ba29c2d5650f02d3aa12f50965b5f6ee15d2e6f", kill_on_drop: false }`
[INFO] [stdout] 4dd700a35e47d5124dc07b8f1ba29c2d5650f02d3aa12f50965b5f6ee15d2e6f
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-9/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-9/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:20528e8c29e4536546f0102ce88568b16ea7538393a33fcca951030f7af10457" "/opt/rustwide/cargo-home/bin/cargo" "+ff34b919075f35a1787659e9c448a34b06bab8de" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 257c5d7f8fead35d2a17d73985872cd21d4dcf5d429228eaef84651f3868105e
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] running `Command { std: "docker" "start" "-a" "257c5d7f8fead35d2a17d73985872cd21d4dcf5d429228eaef84651f3868105e", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]  --> src/lib.rs:4:26
[INFO] [stdout]   |
[INFO] [stdout] 4 |     fn as_any(&self) -> &Any;
[INFO] [stdout]   |                          ^^^ help: use `dyn`: `dyn Any`
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout]   = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]   = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:12:26
[INFO] [stdout]    |
[INFO] [stdout] 12 |     fn as_any(&self) -> &Any {
[INFO] [stdout]    |                          ^^^ help: use `dyn`: `dyn Any`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:23:26
[INFO] [stdout]    |
[INFO] [stdout] 23 |     fn as_any(&self) -> &Any {
[INFO] [stdout]    |                          ^^^ help: use `dyn`: `dyn Any`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:44:26
[INFO] [stdout]    |
[INFO] [stdout] 44 |     fn as_any(&self) -> &Any {
[INFO] [stdout]    |                          ^^^ help: use `dyn`: `dyn Any`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:90:27
[INFO] [stdout]    |
[INFO] [stdout] 90 | type Components = Vec<Box<Component>>;
[INFO] [stdout]    |                           ^^^^^^^^^ help: use `dyn`: `dyn Component`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `m`
[INFO] [stdout]    --> src/lib.rs:100:17
[INFO] [stdout]     |
[INFO] [stdout] 100 |     if let Some(m) = motion {
[INFO] [stdout]     |                 ^ help: if this is intentional, prefix it with an underscore: `_m`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `new_p`
[INFO] [stdout]    --> src/lib.rs:102:21
[INFO] [stdout]     |
[INFO] [stdout] 102 |             let mut new_p = p;
[INFO] [stdout]     |                     ^^^^^ help: if this is intentional, prefix it with an underscore: `_new_p`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]    --> src/lib.rs:147:9
[INFO] [stdout]     |
[INFO] [stdout] 147 |     for i in 0..20 {
[INFO] [stdout]     |         ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/lib.rs:102:17
[INFO] [stdout]     |
[INFO] [stdout] 102 |             let mut new_p = p;
[INFO] [stdout]     |                 ----^^^^^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `set`
[INFO] [stdout]   --> src/lib.rs:28:8
[INFO] [stdout]    |
[INFO] [stdout] 28 |     fn set(&mut self, x: i32, y: i32) {
[INFO] [stdout]    |        ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `new`
[INFO] [stdout]   --> src/lib.rs:49:8
[INFO] [stdout]    |
[INFO] [stdout] 49 |     fn new() -> Motion {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `set_v`
[INFO] [stdout]   --> src/lib.rs:55:8
[INFO] [stdout]    |
[INFO] [stdout] 55 |     fn set_v(&mut self, a_x: f32, a_y: f32)  {
[INFO] [stdout]    |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `set_a`
[INFO] [stdout]   --> src/lib.rs:59:8
[INFO] [stdout]    |
[INFO] [stdout] 59 |     fn set_a(&mut self, v_x: f32, v_y: f32) {
[INFO] [stdout]    |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `get_cmpnt`
[INFO] [stdout]   --> src/lib.rs:70:4
[INFO] [stdout]    |
[INFO] [stdout] 70 | fn get_cmpnt<'a, T>(v: &'a Components) -> Option<T>
[INFO] [stdout]    |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `set_cmpnt`
[INFO] [stdout]   --> src/lib.rs:81:4
[INFO] [stdout]    |
[INFO] [stdout] 81 | fn set_cmpnt<T>(v: &mut Components, val: T)
[INFO] [stdout]    |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias is never used: `Components`
[INFO] [stdout]   --> src/lib.rs:90:1
[INFO] [stdout]    |
[INFO] [stdout] 90 | type Components = Vec<Box<Component>>;
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct is never constructed: `Screen`
[INFO] [stdout]   --> src/lib.rs:92:8
[INFO] [stdout]    |
[INFO] [stdout] 92 | struct Screen {
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `moving`
[INFO] [stdout]   --> src/lib.rs:97:4
[INFO] [stdout]    |
[INFO] [stdout] 97 | fn moving(entity: &Components) {
[INFO] [stdout]    |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling gengine v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: function is never used: `rendering`
[INFO] [stdout]    --> src/lib.rs:108:4
[INFO] [stdout]     |
[INFO] [stdout] 108 | fn rendering(screen: &Screen, entity: &Components) {
[INFO] [stdout]     |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `main`
[INFO] [stdout]    --> src/lib.rs:124:4
[INFO] [stdout]     |
[INFO] [stdout] 124 | fn main() {
[INFO] [stdout]     |    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 20 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]  --> src/lib.rs:4:26
[INFO] [stdout]   |
[INFO] [stdout] 4 |     fn as_any(&self) -> &Any;
[INFO] [stdout]   |                          ^^^ help: use `dyn`: `dyn Any`
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout]   = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]   = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:12:26
[INFO] [stdout]    |
[INFO] [stdout] 12 |     fn as_any(&self) -> &Any {
[INFO] [stdout]    |                          ^^^ help: use `dyn`: `dyn Any`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:23:26
[INFO] [stdout]    |
[INFO] [stdout] 23 |     fn as_any(&self) -> &Any {
[INFO] [stdout]    |                          ^^^ help: use `dyn`: `dyn Any`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:44:26
[INFO] [stdout]    |
[INFO] [stdout] 44 |     fn as_any(&self) -> &Any {
[INFO] [stdout]    |                          ^^^ help: use `dyn`: `dyn Any`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:90:27
[INFO] [stdout]    |
[INFO] [stdout] 90 | type Components = Vec<Box<Component>>;
[INFO] [stdout]    |                           ^^^^^^^^^ help: use `dyn`: `dyn Component`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0601]: `main` function not found in crate `pong`
[INFO] [stdout]  --> examples/pong.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | extern crate gengine;
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^ consider adding a `main` function to `examples/pong.rs`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to previous error
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0601`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `gengine`
[INFO] [stderr] 
[INFO] [stderr] To learn more, run the command again with --verbose.
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] warning: unused variable: `m`
[INFO] [stdout]    --> src/lib.rs:100:17
[INFO] [stdout]     |
[INFO] [stdout] 100 |     if let Some(m) = motion {
[INFO] [stdout]     |                 ^ help: if this is intentional, prefix it with an underscore: `_m`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `new_p`
[INFO] [stdout]    --> src/lib.rs:102:21
[INFO] [stdout]     |
[INFO] [stdout] 102 |             let mut new_p = p;
[INFO] [stdout]     |                     ^^^^^ help: if this is intentional, prefix it with an underscore: `_new_p`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]    --> src/lib.rs:147:9
[INFO] [stdout]     |
[INFO] [stdout] 147 |     for i in 0..20 {
[INFO] [stdout]     |         ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/lib.rs:102:17
[INFO] [stdout]     |
[INFO] [stdout] 102 |             let mut new_p = p;
[INFO] [stdout]     |                 ----^^^^^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `set`
[INFO] [stdout]   --> src/lib.rs:28:8
[INFO] [stdout]    |
[INFO] [stdout] 28 |     fn set(&mut self, x: i32, y: i32) {
[INFO] [stdout]    |        ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `set_v`
[INFO] [stdout]   --> src/lib.rs:55:8
[INFO] [stdout]    |
[INFO] [stdout] 55 |     fn set_v(&mut self, a_x: f32, a_y: f32)  {
[INFO] [stdout]    |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `set_a`
[INFO] [stdout]   --> src/lib.rs:59:8
[INFO] [stdout]    |
[INFO] [stdout] 59 |     fn set_a(&mut self, v_x: f32, v_y: f32) {
[INFO] [stdout]    |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 12 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: build failed
[INFO] running `Command { std: "docker" "inspect" "257c5d7f8fead35d2a17d73985872cd21d4dcf5d429228eaef84651f3868105e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "257c5d7f8fead35d2a17d73985872cd21d4dcf5d429228eaef84651f3868105e", kill_on_drop: false }`
[INFO] [stdout] 257c5d7f8fead35d2a17d73985872cd21d4dcf5d429228eaef84651f3868105e
